Techniques for optimizing vehicle headlights based on situational awareness

ABSTRACT

In one embodiment, a headlight control subsystem optimizes headlamps associated with a vehicle. In operation, the headlight control subsystem receives image data and performs image detection operations that identify one or more objects included in the image. The headlight control subsystem then performs lighting calculations that determine characteristics of vehicle headlights that optimally illuminates the identified objects. Subsequently, the headlight control subsystem configures the headlamps to emit the vehicle headlights, thereby illuminating the object. Notably, in low light conditions, because the headlight control system expands the effective view of the driver through the windshield, the headlight control system increases the ability of the driver to comprehend environmental hazards and perform corrective action. By contrast, supplemental low light viewing techniques that rely on secondary screens or projected data may distract and/or confuse the driver and, consequently, may not reduce the likelihood of accidents attributable to low light conditions.

BACKGROUND

Field of the Various Embodiments

The various embodiments relate generally to automotive systems and, morespecifically, to techniques for optimizing vehicle headlights based onsituational awareness.

Description of the Related Art

In general, low light conditions impair the ability of drivers toperceive the environment surrounding their vehicles. In particular, atnight, the useful visual data that drivers receive via the windshieldsof vehicles is largely limited to illuminated objects. Such restricted“windshield views” dramatically increases the likelihood of collisionsand accidents. To increase safety, vehicles are equipped with headlampsthat produce “headlights”—beams of light that illuminate some of theenvironment in front of, and in the related front periphery of,vehicles, which effectively increases the windshield view. However, theability of headlamps to illuminate those parts of the environment islimited. Consequently, drivers are oftentimes oblivious to objects thatlie outside the area illuminated by the vehicles' headlamps.Accordingly, in an effort to reduce the likelihood of collisions andaccidents attributable to undetected objects, many vehicles are equippedwith additional features designed to mitigate the negative impact of lowlight conditions on driver perception and awareness.

In one approach, vehicles are equipped with infrared cameras. Inoperation, images from the infrared cameras are displayed viainfotainment screens mounted inside the vehicles. While driving, adriver can glance from the windshield to the infotainment screen tosupplement the visual data the driver receives via the windshield view.However, the windshield view and the infotainment screen are typicallydisconnected and glancing back-and-forth between the two takes thedriver's eyes off the road and also may disorient the driver. Further,at night, glancing at the lighted infotainment screen may reduce thenight vision of the driver, thereby decreasing the ability of the driverto detect objects that are partially illuminated in the windshield view.

In another approach, sensor data is projected onto windshields ordelivered to the driver via a heads-up displays. Such sensor data mayinclude navigation data, infrared camera data, etc. While projectingsensor data can increase the amount of environmental data that a driverreceives without requiring the driver to disengage from the windshieldview, the context of the sensor data is usually inconsistent with thewindshield view. In particular, the images projected onto the windshieldare typically two-dimensional, while the real-life images included inthe windshield view are three-dimensional. Consequently, although thedriver may see objects included in a projected image, the driver may notbe able to deduce where such objects are located within thethree-dimensional space surrounding the vehicle. Such confusion canprevent the driver from being able to effectively maneuver aroundobstacles that appear in the projected image but are located outside thewindshield view.

In general, supplemental viewing techniques such as those describedabove, tend to increase the amount of data drivers receive withoutnecessarily increasing the ability of drivers to comprehend criticalenvironmental data. As a result, these types of supplemental viewingtechniques may not effectively increase driver safety during low lightconditions.

As the foregoing illustrates, more effective techniques for mitigatingthe impact of low light conditions on driver safety would be useful.

SUMMARY

One embodiment sets forth a method for controlling a vehicle lightsource. The method includes detecting a first object within a vicinityof a vehicle that includes the vehicle light source; generating one ormore characteristics for a light beam that is to be generated by thevehicle light source based on the first object; and configuring thevehicle light source to generate the light beam based on the one or morecharacteristics.

Further embodiments provide, among other things, a computer-readablemedium and a system configured to implement the method set forth above.

At least one advantage of the disclosed techniques is that vehicles maybe equipped with a headlight control system that implements thesetechniques to improve driver safety in low-light conditions. Notably,configuring the headlight control system to detect and illuminateobjects relevant to the vehicle optimizes the view of the driver throughthe windshield. As a result, the ability of the driver to detect hazardsin the vicinity of the vehicle and respond appropriately is increased.By contrast, conventional supplemental viewing techniques, such asdisplay screens, may increase the amount of data the driver receiveswithout necessarily increasing the ability of the driver to comprehendthe data.

BRIEF DESCRIPTION OF THE DRAWINGS

So that the manner in which the above recited features of the variousembodiments can be understood in detail, a more particular description,briefly summarized above, may be had by reference to embodiments, someof which are illustrated in the appended drawings. It is to be noted,however, that the appended drawings illustrate only typical embodimentsand are therefore not to be considered limiting in scope, for thevarious embodiments may admit to other equally effective embodiments.

FIG. 1 illustrates a passenger compartment of a vehicle that isconfigured to implement one or more aspects of the various embodiments;

FIG. 2 is a more detailed illustration of the head unit of FIG. 1,according to various embodiments;

FIG. 3 is a more detailed illustration of the headlight controlsubsystem of FIG. 2, according to various embodiments;

FIG. 4 is an example of how vehicle headlights are controlled by theheadlight control subsystem of FIG. 3, according to various embodiments;

FIG. 5 is a flow diagram of method steps for controlling vehicleheadlights, according to various embodiments.

DETAILED DESCRIPTION

In the following description, numerous specific details are set forth toprovide a more thorough understanding of the various embodiments.However, it will be apparent to one of skill in the art that the variousembodiments may be practiced without one or more of these specificdetails.

Vehicle Overview

FIG. 1 illustrates a passenger compartment 100 of a vehicle that isconfigured to implement one or more aspects of the various embodiments.As shown, the passenger compartment 100 includes, without limitation, awindshield 110 and a head unit 130 positioned proximate to a dashboard120. In various embodiments, the passenger compartment 100 may includeany number of additional components that implement any technicallyfeasible functionality. For example and without limitation, in someembodiments the passenger compartment 100 may include a rear-viewcamera.

The windshield 110 is the front window of the vehicle and is typicallyfabricated of safety glass or high-impact acrylic plastic. As referredto herein, the “windshield view” is the useful visual data that driversreceive via the windshield of vehicles. In general, if an object liesoutside the line-of-sight of a driver, then the object is not includedin the windshield view. Further, in low light conditions, the windshieldview includes objects that are visible to the driver, such as objectsthat are relatively well illuminated, and does not include objects thatthe driver is unable to detect because they are relatively poorlyilluminated.

As shown, the head unit 130 is located in the center of the dashboard120. In various embodiments, the head unit 130 may be mounted at anylocation within the passenger compartment 100 in any technicallyfeasible fashion that does not block the windshield 110. The head unit130 may include any number and type of instrumentation and applications,and may provide any number of input and output mechanisms. For example,and without limitation, the head unit 130 typically enables the driverand/or passengers to control entertainment functionality. In someembodiments, the head unit 130 may include navigation functionalityand/or advanced driver assistance functionality designed to increasedriver safety, automate driving tasks, and the like.

The head unit 130 may support any number of input and output data typesand formats as known in the art. For example, and without limitation, insome embodiments, the head unit 130 may include built-in Bluetooth forhands-free calling and audio streaming, universal serial bus (USB)connections, speech recognition, rear-view camera inputs, video outputsfor any number and type of displays, and any number of audio outputs. Ingeneral, any number of sensors, displays, receivers, transmitters, etc.may be integrated into the head unit 130 or may be implementedexternally to the head unit 130. External devices may communicate withthe head unit 130 in any technically feasible fashion.

FIG. 2 is a more detailed illustration of the head unit 130 of FIG. 1,according to various embodiments. As shown, the head unit 130 includes,without limitation, a central processing unit (CPU) 270, a graphicsprocessing unit (GPU) 272, and a system memory 240. The CPU 270, the GPU272, and the system memory 240 may be implemented in any technicallyfeasible fashion. For example, and without limitation, in variousembodiments, any combination of the CPU 270, the GPU 272, and the systemmemory 240 may be implemented as a stand-alone chip or as part of a morecomprehensive solution that is implemented as an application-specificintegrated circuit (ASIC) or a system-on-a-chip (SoC).

The CPU 270 generally comprises a programmable processor that executesprogram instructions to manipulate input data. The CPU 270 may includeany number of processing cores, memories, and other modules forfacilitating program execution. The CPU 270 may receive input fromdrivers and/or passengers of the vehicle via any number of user inputdevices 212. The user input devices 212 may include various types ofinput devices, such as buttons, a microphone, cameras, a touch-basedinput device integrated with a display device 214 (i.e., a touchscreen), and other input devices for providing input data to the headunit 130. The GPU 172 generally comprises a programmable or fixedfunction processor that accepts commands and data from the CPU 170 andgenerates pixels for display on the display device 214.

The system memory 274 generally comprises storage chips such as randomaccess memory (RAM) chips that store application programs and data forprocessing by the CPU 170 and/or the GPU 172. In various embodiments,the system memory 274 includes non-volatile memory such as opticaldrives, magnetic drives, flash drives, or other storage. In someembodiments, a storage 260 may supplement or replace the system memory274. The storage 270 may include any number and type of externalmemories that are accessible to the CPU 170. For example, and withoutlimitation, the storage 270 may include a Secure Digital Card, anexternal Flash memory, a portable compact disc read-only memory(CD-ROM), an optical storage device, a magnetic storage device, or anysuitable combination of the foregoing.

As shown, the system memory 240 includes, without limitation, anentertainment subsystem 244, a navigation subsystem 246, and an advanceddriver assistance system (ADAS) 250. The entertainment subsystem 244includes software that controls any number and type of entertainmentcomponents, such as an AM/FM radio, a satellite radio, a Moving PictureExperts Group Layer-3 (MP3) player, a compact disc (CD) player, and soforth. In some embodiments, any number of entertainment components maybe included in the head unit 130 and any number of entertainmentcomponents may be implemented as stand-alone devices. The navigationsubsystem 246 includes any number and type of applications that enable adriver to efficiently navigate the vehicle. For example, the navigationsubsystem 246 may include maps, direction routing software, and thelike.

The ADAS 250 subsystem includes functionality that is designed toincrease driver safety and/or automate driving tasks. For example, andwithout limitation, in various embodiments, the ADAS 250 subsystem mayprovide hill descent control, automatic parking, and the like. Notably,the functionality included in the ADAS 250 may supplement, enhance,and/or automate functionality provided by other components included inthe vehicle to decrease the likelihood of accidents or collisions inchallenging conditions and/or driving scenarios.

In particular, during low-light conditions, the windshield view isrestricted to objects that are illuminated. Because, such a restrictedwindshield view impairs the ability of a driver of a vehicle to perceivethe environment in front of, and in the related front periphery of, thevehicle, the likelihood of collisions and accidents during low lightconditions is increased. Consequently, to increase safety, vehicles areequipped with headlamps that produce headlights. For explanatorypurposes, as referred to herein, a headlamp is a light source designedto provide external illumination for a vehicle. In a complementaryfashion, as referred to herein, a “headlight” is any beam of light, alsoreferred to herein as light beam, that is produced and distributed by aheadlamp. For example, and without limitation, a vehicle may include anynumber and type of headlamps, such as low beam headlamps, high beamheadlamps, fog headlamps, variable illumination headlamps, and so forth.Further, each headlamp may be implemented in any technically feasiblefashion. For example, and without limitation, in some embodiments aheadlamp may be a round sealed-beam headlamp with internal halogenburners, an aerodynamically-shaped high-energy discharge (HED) headlamp,a light array of multiple, discrete light-emitting diode (LED) lightsources, and so forth.

In operation, the headlights of a vehicle, also referred to herein asvehicle headlights, illuminate some of the environment in front of, andin the related front periphery of, the vehicle, which effectivelyincreases the windshield view. However, the ability of headlamps toilluminate those parts of the environment is limited. As a result,drivers are oftentimes oblivious to objects that lie outside the areailluminated by the vehicles' headlamps. In conventionally equippedvehicles, the orientations of the headlamps are fixed during operation.More specifically, the headlamps are typically oriented to emit vehicleheadlights that illuminate the area directly in front of the vehicle.However, while such a lighting arrangement may illuminate objects thatare relevant to the safe operation of a vehicle in certain situations,in other situations objects that lie to one side of the vehicle may bemore critical to the safe operation of the vehicle than the objects thatlie directly in front of the vehicle.

For example, and without limitation, if a pedestrian is crossing fromthe left side of a road to the right side of the road a night, then theheadlights of a conventionally equipped vehicle would illuminate thearea directly in front of the vehicle while leaving the pedestrianunilluminated. By the time the pedestrian moved into the areailluminated by the headlights, the driver could be unable tosuccessfully execute collision avoidance maneuvers and could hit thepedestrian. In another example, and without limitation, suppose that aboulder is careening down a mountainside at night. Further, suppose thatthe mountainside abuts the right lane of a highway and a driver issteering a vehicle along the highway. In such a scenario, the headlightsof a conventionally equipped vehicle could illuminate the area directlyin front of the vehicle while leaving the boulder unilluminated. By thetime the boulder rolls into the area illuminated by the headlights, thedriver could be unable to avoid the boulder, the boulder could collidewith the vehicle, and the driver and any passengers could be injured.

Dynamically Controlling Vehicle Headlights

As the foregoing examples illustrate, to decrease the likelihood ofaccidents and collisions during low light conditions, a moresituationally aware approach to controlling the vehicle headlights wouldbe helpful. Accordingly, the ADAS 250 includes a headlight controlsubsystem 260 that is configured to detect objects that are relevant todriving the vehicle and then dynamically orient the headlamps tooptimally illuminate the relevant objects. For example, and withoutlimitation, if a pedestrian is on the left side of the road, then theheadlight control subsystem 260 detects the pedestrian and, in response,angles the headlamps to the left such that the headlamps emit vehicleheadlights that illuminate the pedestrian. Similarly, if a boulder iscareening down a mountainside to the right of the vehicle, then theheadlight control subsystem 260 detects the boulder and, in response,angles the headlamps to the right such that the headlamps emit vehicleheadlights that illuminate the boulder.

The headlight control subsystem 260 may process any type of input dataand implement any technically feasible algorithm to detect objectsand/or determine the relevance of objects to the vehicle. As shown, andwithout limitation, the headlight control subsystem 260 receives datafrom any number of cameras 232 and any number of input sensors 234. Eachof the cameras 232 is a device capable of capturing image and/or videodata. For example, and without limitation, the cameras 232 may include afront-mounted visible light video recording camera and an infraredcamera. The input sensors 234 may include any type of sensors as knownin the art. For example, and without limitation, the input sensors 235may include a radio detection and ranging (RADAR) sensor, a lightdetection and ranging (LIDAR) sensor, a dedicated short rangecommunication (DSRC) sensor, and the like.

In some embodiments, the headlight control subsystem 260 may receiveadditional input data, referred to herein as advanced driver assistancesystem (ADAS) data. Such ADAS data may include, without limitation, datareceived from a global navigation satellite system (GNSS) receiver 236and data received from the navigation subsystem 245. The globalnavigation satellite system (GNSS) receiver 236 determines globalposition of the vehicle. The GNSS receiver 236 operates based on one ormore of the global positioning system of manmade Earth satellites,various electromagnetic spectrum signals (such as cellular towersignals, wireless internet signals, and the like), or other signals ormeasurements, and/or on a combination of the above items. In variousembodiments, the headlight control subsystem 260 accesses globalpositioning data from GNSS receiver 236 in order to determine a currentlocation of the vehicle. Further, in some embodiments, the headlightcontrol subsystem 260 accesses data provided by the navigation subsystem246 in order to determine a likely future location of the vehicle.

In yet other embodiments, the headlight control subsystem 260 mayreceive and transmit additional ADAS data including, and withoutlimitation, automotive vehicle-to-everything (V2X) data 238. Thevehicle-to-everything (V2X) data 238 may include vehicle-to-vehicle(V2V) data, vehicle-to-infrastructure (V2I) data, and so forth. The V2Xdata 238 enables the vehicle to communicate with other objects thatinclude V2X capabilities. For example, the vehicle may communicate withother vehicles, smartphones, traffic lights, laptops, road-side V2Xunits, and so forth.

After receiving and processing the input data, the headlight controlsubsystem 260 generates any number of headlamp control signals 265 thatconfigure any number of headlamps in any technically feasible fashion.The headlight control signals 265 may be transmitted in any format andany technically feasible fashion that is consistent with thecapabilities of the headlamps. For example, the headlight controlsignals 265 may be electrical signals that are transmitted to theheadlamps via electrical wires connecting the head unit 130 to theheadlamps. Based on the headlight control signals 265, the headlamps areconfigured to vary the nature of the vehicle headlights in anytechnically feasible fashion.

For example and without limitation, in some embodiments the headlampsmay be mounted on a pan-tilt assembly that enables the headlight controlsubsystem 260 to adjust the vertical and horizontal angles of thevehicle headlights relative to the front of the vehicle. In someembodiments, the headlamps may include variable focusing systems thatenable the headlight control subsystem 260 to tailor the illumination,convergence, divergence, etc. of the vehicle headlights. The variablefocusing system may be implemented in any technically feasible fashion.For example, and without limitation, the variable focusing system mayinclude any number one or more lenses, reflectors, diffusers, filters,and the like. In some embodiments, the headlamps may include anadjustable power source that allows the headlight control subsystem 260to modify the illumination intensity of the vehicle headlights. In yetother embodiments, the headlamps may include multicolor LEDs and theheadlight control subsystem 260 may select the color of the vehicleheadlights emitted by the headlamps based on any criterion, such asrelative importance of different objects.

As part of identifying and illuminating objects that are pose a safetyrisk to the vehicle, such as a pedestrian or a boulder, the headlightcontrol subsystem 260 may implement any number of algorithms thatfine-tune the vehicle headlights to optimize visibility. For example,and without limitation, the headlight control subsystem 260 mayimplement algorithms to avoid washout conditions attributable to vehicleheadlights. If the headlight control subsystem 260 determines that thecurrent illumination intensity of the vehicle headlights could reducethe visibility of a particular object, then the headlight controlsubsystem 260 could control variable focusing capabilities and/oradjustable power sources included in the headlamps to reduce theillumination intensity. In particular, if the head unit 130 determinesthat the current illumination intensity of the vehicle headlights couldover-illuminate a street sign such that the driver would be unable toread the street sign, then the headlight control subsystem 260 couldreduce the illumination intensity.

Further, in some embodiments, the headlight control subsystem 260 mayimplement any number of algorithms that optimize the vehicle headlightsto improve the driving experience. For example, and without limitation,in some embodiments, the headlight control subsystem 260 may beconfigured to illuminate street signs, addresses on curbs, mailboxes,etc., names on buildings, gates, etc., and/or other navigationalbeacons. More specifically, the headlight control subsystem 260 couldreceive positional data associated with the vehicle from the GNSSreceiver 236, receive route data from the navigation subsystem 246, andreceive image data from the camera 232. If the positional data and theroute data indicate an upcoming left turn at street “X,” then theheadlight control subsystem 260 could perform image detection operationson the image data to determine whether an “X” street sign is included inthe image data. If the headlight control subsystem 260 determines thatthe image data includes the “X” street sign, then the headlight controlsubsystem 260 could configure the headlamps to emit vehicle headlightsthat illuminate the X street sign.

In yet another example, and without limitation, the headlight controlsubsystem 260 could focus on illuminating business signs, billboards,etc. More specifically, the headlight control subsystem 260 couldreceive an advertisement from a company “Y” and, in response, the headunit 130 could perform image detection operations on image data toidentify signs and buildings associated with the company Y. If theheadlight control subsystem 260 detects a sign or building associatedwith the company Y, then the headlight control subsystem 260 couldconfigure the headlamps to emit vehicle headlights that illuminate thesign or building.

In general, the headlight control subsystem 260 may be configured todetect, illuminate, and track any number of objects in any method thatimproves the driving experience in any type of conditions. Further, theheadlight control subsystem 260 may implement any technically feasiblealgorithm to prioritize the illumination of the objects. For example, ifa pedestrian is on the left side of the road and a billboard is on theright side of the road, then the headlight control subsystem 260 couldbe configured to illuminate the left side of the road instead of theright side of the road.

Although the headlight control subsystem 260 is described in the contextof the head unit 130 herein, the functionality included in the headlightcontrol subsystem 260 may be implemented in any technically feasiblefashion and in any combination of software and hardware. For example,and without limitation, each of the CPU 270, the GPU 272, and the systemmemory 240 may be embedded in or mounted on a laptop, a tablet, asmartphone, or the like that implements the headlight control subsystem260. In other embodiments, and without limitation, the headlight controlsubsystem 260 may be implemented as a stand-alone unit that supplementsthe functionality of existing vehicle headlight systems. Such astand-alone unit may be implemented as a software application thatexecutes on any processor included in any system that is capable ofcommunicating and controlling any type of light source. In someembodiments, such a stand-alone unit may include software and aprocessor that communicate with any number of light sources that areaffixed to the front of the vehicle. These light sources may replace orsupplement existing headlamps. In various embodiments a softwareapplication included in the headlight control subsystem 260 may executeone or more library calls to a software library of routines that performany number of operations. For example, and without limitation, such asoftware application could execute library calls that implementdetection operations associated with a visible light camera.

FIG. 3 is a more detailed illustration of the headlight controlsubsystem 260 of FIG. 2, according to various embodiments. As shown, theheadlight control subsystem 260 includes, without limitation, an objectidentification engine 310, a lighting optimizer 330, a headlamp controlengine 350, and a tracking engine 360. In alternate embodiments, withoutlimitation, any number of components may provide the functionalityincluded in the headlight control subsystem 360 and each of thecomponents may be implemented in software, hardware, or any combinationof software and hardware.

The object identification engine 310 includes, without limitation, avideo/image unit 312, a sensor data unit 314, and an integration unit316. The video/image unit 312 receives still image data and/or framesfrom the cameras 232 and performs object detection operations togenerate lists of objects. In general, the video/image unit 312 mayprocess input data in a continuous manner or as discrete data sets.Further, the video/image unit 312 may process input data from differentcameras 232 concurrently, sequentially, or any combination thereof. Thevideo/image unit 312 may implement any number of technically feasibleobject detection algorithms and generate any number of lists of objects.For example and without limitation, in various embodiments thevideo/image unit 312 may process input data from different cameras 232independently to form multiple objects lists, in an integrated fashionto form a single object list, or any combination thereof.

In particular, in some embodiments, the video/image unit 312 may receiveframes of image data from a visible light video recording camera 232 andstill images from an infrared camera. In such embodiments, thevideo/image unit 312 may perform object detection operations separatelyon the frames of image data and the still images to create two lists ofobjects. In other embodiments, the video/image unit 312 may perform anynumber of object detection operations of the input data independentlyand then one or more integration operations to merge the detectedobjects into a single list of detected objects.

In a similar fashion, the sensor data unit 314 receives data from theinput sensors 234 and performs object detection operations to generateadditional lists of objects. Notably, both the video/image unit 312 andthe sensor data unit 314 may perform any type of object detectionoperations based on the data from, respectively, the cameras 232 and theinput sensors 232 in any technically feasible fashion. For example andwithout limitation, in some embodiments the video/image unit 312 and thesensor data unit 314 may implement object detection algorithms thatidentify any objects included within a specific distance of the vehicle.In other embodiments, and without limitation, the video/image unit 312and the sensor data unit 314 may implement object detection algorithmsthat search for specific types of objects, such as other vehicles,traffic lights, road signs, and the like. Further, the video/image unit312 and the sensor data unit 314 may implement different objectdetection algorithms. For example, and without limitation, thevideo/image unit 312 may be configured to detect any objects included inthe image data received from the cameras 232. By contrast, the sensordata unit 314 may be configured to detect any objects included in thedata received from the input sensors 232 that lie within a line-of-sightrelative to the vehicle and exclude objects that do not lie within theline-of-sight relative to the vehicle.

The integration unit 316 receives the lists of objects from thevideo/image unit 312 and the sensor data unit 314 in addition to ADASinput data. The ADAS input data may include any type of data that isrelevant to driving the vehicle including, and without limitation, datafrom the GNSS receiver 236, data from the navigation subsystem 248, andV2X data 238. The integration unit 316 performs one or more fusionoperations on the received data to synthesize an integrated situationalawareness that includes a list of relevant objects 320. As used herein,“situation awareness” refers to a representation of the environment infront of, and in the related front periphery of, the vehicle that may ormay not include additional information, such as the relative importantof objects in front of, and in the related front periphery of, thevehicle to the vehicle. The integration unit 316 may be implemented inany technically feasible fashion.

For example and without limitation, in some embodiments the integrationunit 316 may perform any number of merging operations on the objectlists to create the list of relevant objects 320. The integration unit136 may then apply any number of situational assessment algorithms toprune or rank the list of relevant objects 320 based on any evaluationcriterion, such as likelihood of collision with the vehicle, distancefrom the vehicle, and so forth. Notably, as part of the situationassessment, the integration unit 136 may leverage any type of ADAS data.For example, and without limitation, the integration unit 136 maycalculate evaluation criterion based on the current position of thevehicle in accordance with data received from the GNSS receiver 236, apredicted future position of the vehicle in accordance with datareceived from the navigation subsystem 248, and the position of othervehicles in accordance with the V2X data 238.

The lighting optimizer 330 receives the relevant objects 320 andgenerates optimized lighting characteristics 340 for vehicle headlightsdesigned to illuminate the relevant objects 320 to increase drivingsafety and improve the driving experience. As shown, the lightingoptimizer 330 includes, without limitation, an angle computation unit332 and an intensity computation unit 334. In alternate embodiments, thelighting optimizer 330 may include any number and type of componentsthat compute any number of lighting characteristics that indicate thenature of the optimal vehicle headlights. For example and withoutlimitation, in some embodiments the lighting optimizer 330 may include acolor computation unit that selects a color of the headlamps based onthe type of object (e.g., “red” could signify cars, “green” couldsignify buildings, and “purple” could signify pedestrians). In otherembodiments, the lighting optimizer 330 may include a focus intensityunit that controls the convergence of the headlamps, thereby enablingthe lighting optimizer 330 to configure the headlamps to spotlight anynumber of the relevant objects 320, diffusely light an entire region, orany combination thereof.

The angle computation unit 332 computes the angles, also referred toherein as the orientation, of the vehicle headlights relative to thevehicle such that the vehicle headlights optimally illuminate therelevant objects 320. For example, for each headlamp, the anglecomputation unit 332 may compute an angle relative to a horizontal axisassociated with the headlamp and an angle relative to a vertical axisassociated with the headlamp. The intensity computation unit 334determines, for each vehicle headlight, the illumination intensity thatmaximizes driving safety. For example and without limitation, if therelevant objects 320 includes an oncoming vehicle, then the intensitycomputation unit 334 may be configured to set the illumination intensityto a relatively low intensity to illuminate the oncoming vehicle withoutblinding the driver of the oncoming vehicle. By contrast, if therelevant objects 320 do not include any oncoming vehicles, then theintensity computation unit 334 may be configured to set the illuminationintensity to a relatively high intensity to maximize the path of thevehicle headlights. As referred to herein, the path of the vehicleheadlights includes the area in front of, and in the related frontperiphery of, the vehicle that is sufficiently illuminated by thevehicle headlights to allow the driver of the vehicle to visuallyidentify objects. In general, the lighting optimizer 330 may compute anynumber of optimized lighting characteristics 340 for any number ofvehicle headlights in order to illuminate any number of the relevantobjects 230.

The headlamp control engine 350 receives the optimized lightingcharacteristics 340 and generates the headlamp control signals 265 thatconfigure the headlamps. Notably, the headlamp control engine 350 inconfigured to generate the headlamp control signals 265 in anytechnically feasible fashion that is consistent with the capabilitiesand interfaces implemented by the headlamps. For example, and withoutlimitation, if a particular headlamp is mounted in a pan-tilt assembly,then the headlamp control engine 350 could convert a horizontal andvertical angle associated with a vehicle headlight and included in theoptimized lighting characteristics 340 to a pan and tilt. The headlampcontrol engine 350 could then relay the headlamp control signals 265that include the pan and tilt to the headlamp via wires that connect thehead unit 130 to the headlamps.

Subsequently, the tracking engine 360 performs tracking operations todetermine continuations of the relevant objects 320 and then generatesadditional headlamp control signals 265 that configure the headlamps toilluminate these continuations. As referred to herein, the continuationsof the relevant objects 320 are the predicted locations of the relevantobjects 320 at future times. Notably, the tracking engine 360 implementstracking algorithms that incorporate the predicted motion of the vehicleand/or the relevant objects 320 to continually illuminate the relevantobjects 320.

As shown, the tracking engine 360 includes, without limitation, a Kalmanfilter 362. In operation, the tracking engine 360 leverages the Kalmanfilter 362 to predict the continuations of the relevant objects 320.More specifically, the tracking engine 360 performs one or more Kalmanfiltering operations based on measurements associated with the relevantobjects 320. Subsequently, the tracking engine 360 adjusts the optimizedlighting characteristics 340 based on the continuations of the relevantobjects 320 and then generates the headlamp control signals 265. Inalternate implementations, the tracking engine 360 may implement anynumber of algorithms in any technically feasible fashion to determinethe continuations of the relevant objects 320, adjust the optimizedlighting characteristics 320, and generate the headlamp control signals265.

For example and without limitation, in some embodiments the trackingengine 360 may perform tracking operations based on data from thenavigation subsystem 248 to determine the continuations of the relevantobjects 320. The tracking engine 360 may then configure the lightingoptimizer 330 to determine “continuation” optimized lightingcharacteristics 340 designed to illuminate the continuations of therelevant objects 320. Finally, the tracking engine 360 may configure theheadlamp control engine 350 to generate “continuation” headlamp controlsignals 265 based on the continuation optimized lighting characteristics340.

In general, the headlight control subsystem 260 may configure the objectidentification engine 310, the lighting optimizer 330, the headlampcontrol engine 350, and the tracking engine 360 to execute any number oftimes, in any order, and on any type of data to generate the headlampcontrol signals 265. Further, the functionality included in theheadlight control subsystem 260 may be implemented in any number andcombination of components. For example and without limitation, in someembodiments the tracking engine 360 may be omitted and trackingfunctionality may be included in the object identification engine 310.In such embodiments, the headlight control subsystem 260 may receive afirst data set that includes the data from any number and combination ofthe cameras 232, the input sensors 234, the GNSS receiver 236, and thenavigation subsystem 248 in addition to the V2X data 238. The objectidentification engine 310 may generate the relevant objects 320 based onthe aforementioned data. Based on the location of the vehicle, theorientation of the headlamps, and/or the locations of the relevantobjects 320, the lighting optimizer 340 may calculate the optimizedlighting characteristics 340 for vehicle headlights that appropriatelyilluminate the relevant objects 320. The headlamp control engine 350 maythen convert the optimized lighting characteristics 340 to the headlampcontrol signals 265 that configure the headlamps to emit the vehicleheadlights as characterized.

Subsequently, the headlight control subsystem 260 may receive a seconddata set that includes the data from any number and combination of thecameras 232, the input sensors 234, the GNSS receiver 236, thenavigation subsystem 248 in addition to the V2X data 238. The objectidentification engine 310 may analyze the aforementioned data todetermine whether the relevant objects 320 are still present. If therelevant objects 320 are still present, then the headlight controlsubsystem 260 could determine whether the relevant objects 320 havemoved, the vehicle has moved, or any combination thereof. Based on thedetermined movements, the lighting optimizer 330 may calculate theoptimized lighting characteristics 340 for the vehicle headlights thatappropriately illuminate the new locations of the relevant objects 320.The headlamp control engine may then convert these new optimizedlighting characteristics 340 to the headlamp control signals 265 thatconfigure the headlamps to emit the vehicle headlights as characterized.

By contrast, if the relevant objects 320 are not present, then theheadlight control subsystem 260 may generate a new set of relevantobjects 320. If the new set of relevant objects 320 contains no objects,then the headlight control subsystem 260 may configure the headlamps viathe headlamp control signals 265 to emit “default” vehicle headlights,such as vehicle headlights that are directed directly ahead of thevehicle. The headlight control subsystem 260 may continue this processof detecting the relevant objects 320 and updating the headlamp controlsignals 265 to illuminate the relevant objects 320 for any number ofdata sets at any time intervals while the vehicle is in motion.

FIG. 4 is an example of how vehicle headlights are controlled by theheadlight control subsystem 260 of FIG. 3, according to variousembodiments. For explanatory purposes only, FIG. 4 depicts two differentconfiguration of the headlight control subsystem 260: a default mode 480and a detection mode 490. The context of both the default mode 480 andthe detection mode 490 is that lane markers 450 curve from the front ofthe vehicle to the right of the vehicle, a pedestrian 460 is on theright side of the road and moving across the road, and low lightconditions obscure any objects that are not illuminated by vehicleheadlights.

In the default mode 480, the headlight control subsystem 260 is notperforming any object detection or tracking operations. Instead, theheadlight control subsystem 260 configures a left headlamp actuator 404to orient a left headlamp 402 such that the left headlamp 402 emits aleft vehicle headlight that illuminates the road directly in front ofthe vehicle. Similarly, the headlight control subsystem 260 configures aright headlamp actuator 414 to orient a right headlamp 412 such that theright headlamp 412 emits a right vehicle headlight that illuminates theroad directly in front of the vehicle. Consequently, as shown, thewindshield view includes a portion of the lane markers 450 but does notinclude the pedestrian 460. Because the driver cannot see the pedestrian460 until the pedestrian 460 crosses directly in front of the vehicle,the driver may be unable to avoid hitting the pedestrian 460 with thevehicle.

By contrast, in the detection mode 490, the headlight control subsystem260 is performing object detection and tracking operations. Inparticular, the headlight control subsystem 260 configures a leftheadlamp actuator 404 to orient a left headlamp 402 such that the leftheadlamp 402 emits a left vehicle headlight that illuminates thepedestrian 460. Similarly, the headlight control subsystem 260configures a right headlamp actuator 414 to orient a right headlamp 412such that the right headlamp 412 emits a right vehicle headlight thatilluminates the pedestrian 460. Consequently, as shown, the windshieldview includes the lane markers 450 and the pedestrian 460. Because thedriver can see the pedestrian 460 while the pedestrian 460 crosses fromthe right side of the road to the left side of the road, the driver maybe able to avoid hitting the pedestrian 460 with the vehicle.

As the foregoing examples illustrate, in general, if a road curves, thenheadlamps that are configured to illuminate the road directly in from ofa vehicle unnecessarily limit the distance that the driver of thevehicle can see down the road. By contrast, by moving the headlampsbased on the curvature of the road, the distance that the driver can seedown the road is increased.

FIG. 5 is a flow diagram of method steps for controlling vehicleheadlights, according to various embodiments. Although the method stepsare described in conjunction with the systems of FIGS. 1-4, personsskilled in the art will understand that any system configured toimplement the method steps, in any order, falls within the scope of thevarious embodiments.

As shown, a method 500 begins at step 504, where the video/image unit312 receives road image data from the cameras 232 and performs objectdetection operations on the image data to generate a first list ofobjects. At step 506, the sensor data unit 314 receives sensor data fromthe input sensors 234 and performs object detection operations on thesensor data to generate a second list of objects. At step 508, theintegration unit 316 integrates the first list of objects, the secondlist of objects, and ADAS input data to identify the relevant objects320. The ADAS input data may include any number and type of dataincluding, without limitation, data received from the GNSS 236, datareceived from the navigation subsystem 248, and V2X data 238. Ingeneral, the integration unit 316 may perform any number of merging,ranking, and/or comparison operations to generate the relevant objects320.

At step 510, the lighting optimizer 330 receives the relevant objects320 and computes the optimized lighting characteristics 340 thatoptimally illuminate the relevant objects 320. The optimized lightingcharacteristics 340 may include any number of parameters, features, andthe like that characterize the vehicle headlights. For example, theoptimized lighting characteristics 340 may specify any number andcombination of the angle of the vehicle headlights, the intensity of thevehicle headlights, the focus of the vehicle headlights, the color ofthe vehicle headlights, and so forth.

At step 512, the headlamp control engine 350 computes the headlampcontrol signals 265 based on the optimized lighting characteristics 340.More specifically, the headlamp control engine 350 configures theheadlamps to emit the vehicle headlights as characterized by theoptimized lighting characteristics 340. For example, and withoutlimitation, suppose that the optimized lighting characteristics 340specify that the angle of the vehicle headlights is to be at 45 degreeswith respect to the front of the vehicle. The headlamp control engine350 could transmit headlamp control signals 265 that orient theheadlamps to point at 45 degrees with respect to the front of thevehicle.

At step 514, the tracking engine 360 performs tracking operations topredict the location of the continuations of the relevant objects 320.Based on the predicted locations of the continuations of the relevantobjects 320, the tracking engine 360 generates additional headlampcontrol signals 265 that are designed to optimally illuminate therelevant objects 320 as the vehicle and/or the relevant objects 320move.

The headlight control subsystem 260 continues to cycle through steps504-514, detecting and illuminating the relevant objects 320 and thecontinuations of the relevant objects 320 as the vehicle operates. Inthis fashion, the headlight control subsystem 260 enables the driver toperceive the relevant objects 320 in low light conditions and,consequently, decreases the likelihood of collisions and accidentsinvolving the vehicle that are attributable to the low light conditions.

In one embodiment, a headlight control system optimizes vehicleheadlights based on the environment in front of, and in the relatedfront periphery of, a vehicle. In operation, a video/image unit receivesimage frame data, such as data from visible light cameras, infrareddevices, and the like. The video/image unit performs object detectionoperations to generate lists of detected objects. Similarly, a sensordata unit receives data from input sensors and generates additionallists of detected objects. The input sensors may include any number andcombination of RADAR sensors, LIDAR sensors, DSRC sensors, etc. Anintegration unit integrates and fuses the lists of detected objects inconjunction with advanced driver assistance system (ADAS) data togenerate a situational awareness that includes relevant objects.Notably, the ADAS system data may originate from a wide variety ofsources including, without limitation, V2X communication, a GNSSreceiver, and a navigation subsystem.

A headlight optimizer receives the list of relevant objects and performslighting calculations to determine the combination of angle, focus, andintensity of vehicle headlights that optimally illuminates the relevantobjects. Subsequently, a headlamp control engine generates headlampcontrol signals that, when received by adjustable headlamps, cause theheadlamps to produce the desired vehicle headlights. For example, theheadlamp control engine may generate signals that configure pan-tiltassemblies that adjust the angle of the vehicle headlights, variablefocusing systems that adjust the focus of the vehicle headlights, andadjustable power sources that tailor the illumination intensity of thevehicle headlights. Subsequently, a tracking engine tracks the relevantobjects and adjusts the headlight control signals to continueilluminating the relevant objects as the vehicle and/or the relevantobjects move. As the vehicle operates, the headlight control systemcontinues in this fashion—identifying relevant objects, controlling theheadlamps to illuminate the relevant objects, tracking the relevantobjects, and adjusting the headlamps to continue illuminating therelevant objects.

At least one advantage of the disclosed approach is that the headlightcontrol system strategically illuminates relevant objects in low-lightconditions and, consequently, increases driver safety. In particular,because the headlight control system integrates data from a variety ofsources to identify and illuminate the objects most relevant to driversafety, the windshield view provides the germane data in acontextually-consistent manner. Consequently, the driver can focus ondriving based on the windshield view without being distracted ordisoriented by secondary display screens, a mixture of two-dimensionaland three-dimensional images, and/or irrelevant data.

The descriptions of the various embodiments have been presented forpurposes of illustration, but are not intended to be exhaustive orlimited to the embodiments disclosed. Many modifications and variationswill be apparent to those of ordinary skill in the art without departingfrom the scope and spirit of the described embodiments.

Aspects of the present embodiments may be embodied as a system, methodor computer program product. Accordingly, aspects of the presentdisclosure may take the form of an entirely hardware embodiment, anentirely software embodiment (including firmware, resident software,micro-code, etc.) or an embodiment combining software and hardwareaspects that may all generally be referred to herein as a “circuit,”“module” or “system.” Furthermore, aspects of the present disclosure maytake the form of a computer program product embodied in one or morecomputer readable medium(s) having computer readable program codeembodied thereon.

Any combination of one or more computer readable medium(s) may beutilized. The computer readable medium may be a computer readable signalmedium or a computer readable storage medium. A computer readablestorage medium may be, for example, but not limited to, an electronic,magnetic, optical, electromagnetic, infrared, or semiconductor system,apparatus, or device, or any suitable combination of the foregoing. Morespecific examples (a non-exhaustive list) of the computer readablestorage medium would include the following: an electrical connectionhaving one or more wires, a portable computer diskette, a hard disk, arandom access memory (RAM), a read-only memory (ROM), an erasableprogrammable read-only memory (EPROM or Flash memory), an optical fiber,a portable compact disc read-only memory (CD-ROM), an optical storagedevice, a magnetic storage device, or any suitable combination of theforegoing. In the context of this document, a computer readable storagemedium may be any tangible medium that can contain, or store a programfor use by or in connection with an instruction execution system,apparatus, or device.

Aspects of the present disclosure are described above with reference toflowchart illustrations and/or block diagrams of methods, apparatus(systems) and computer program products according to embodiments of thedisclosure. It will be understood that each block of the flowchartillustrations and/or block diagrams, and combinations of blocks in theflowchart illustrations and/or block diagrams, can be implemented bycomputer program instructions. These computer program instructions maybe provided to a processor of a general purpose computer, specialpurpose computer, or other programmable data processing apparatus toproduce a machine, such that the instructions, which execute via theprocessor of the computer or other programmable data processingapparatus, enable the implementation of the functions/acts specified inthe flowchart and/or block diagram block or blocks. Such processors maybe, without limitation, general purpose processors, special-purposeprocessors, application-specific processors, or field-programmableprocessors or gate arrays.

The flowchart and block diagrams in the figures illustrate thearchitecture, functionality, and operation of possible implementationsof systems, methods and computer program products according to variousembodiments of the present disclosure. In this regard, each block in theflowchart or block diagrams may represent a module, segment, or portionof code, which comprises one or more executable instructions forimplementing the specified logical function(s). It should also be notedthat, in some alternative implementations, the functions noted in theblock may occur out of the order noted in the figures. For example, twoblocks shown in succession may, in fact, be executed substantiallyconcurrently, or the blocks may sometimes be executed in the reverseorder, depending upon the functionality involved. It will also be notedthat each block of the block diagrams and/or flowchart illustration, andcombinations of blocks in the block diagrams and/or flowchartillustration, can be implemented by special purpose hardware-basedsystems that perform the specified functions or acts, or combinations ofspecial purpose hardware and computer instructions.

While the preceding is directed to embodiments of the presentdisclosure, other and further embodiments of the disclosure may bedevised without departing from the basic scope thereof, and the scopethereof is determined by the claims that follow.

1. A method for controlling a vehicle light source, the methodcomprising: detecting a first object within a vicinity of a vehicle thatincludes the vehicle light source; generating one or morecharacteristics for a light beam that is to be generated by the vehiclelight source based on the first object; and configuring the vehiclelight source to generate the light beam based on the one or morecharacteristics.
 2. The method of claim 1, wherein the one or morecharacteristics include at least one of an angle of the light beam, anintensity of the light beam, a focus of the light beam, and a color ofthe light beam.
 3. The method of claim 1, wherein the vehicle lightsource comprises a light array or a headlamp.
 4. The method of claim 1,wherein generating the one or more characteristics comprises: computinga path for the light beam that originates at the vehicle light sourceand includes both the first object and a second object that is withinthe vicinity of the vehicle; and based on the path, computing an angleof the light beam relative to the vehicle light source.
 5. The method ofclaim 1, further comprising: tracking the first object to determine apredicted future location of the first object; based on the predictedfuture location, modifying the one or more characteristics for the lightbeam to generate one or more modified characteristics; and configuringthe vehicle light source to generate a modified light beam based on theone or more modified characteristics.
 6. The method of claim 5, whereintracking comprises performing one or more filtering operations on one ormore measurements associated with the first object to estimate thepredicted future location.
 7. The method of claim 1, wherein determiningthe one or more characteristics comprises: identifying advanced driverassistance system (ADAS) data based on the first object; and selecting afirst characteristic based on the ADAS data.
 8. The method of claim 7,wherein the ADAS data comprises at least one of global navigationsatellite system (GNSS) data, navigation data, and automotivevehicle-to-everything (V2X) data.
 9. A computer-readable storage mediumincluding instructions that, when executed by a processor, cause theprocessor to control a vehicle light source by performing the steps of:detecting one or more objects within a vicinity of a vehicle thatincludes the vehicle light source; determining that a first objectincluded in the one or more objects is relevant to the vehicle; andconfiguring the vehicle light source to generate a light beam thatilluminates the first object.
 10. The computer-readable storage mediumof claim 9, wherein the vehicle light source comprises a light array ora headlamp.
 11. The computer-readable storage medium of claim 9, whereindetecting the one or more objects comprises determining that image dataof the vicinity includes the one or more objects.
 12. Thecomputer-readable storage medium of claim 11, further comprisingreceiving the image data from a camera that is attached to the vehicle.13. The computer-readable storage medium of claim 9, wherein detectingthe one or more objects comprises determining that sensor data of thevicinity indicates the presence of the one or more objects.
 14. Thecomputer-readable storage medium of claim 10, wherein the sensor datacomprises at least one of radio detection and ranging (RADAR) data,light detection and ranging (LIDAR) data, and dedicated short rangecommunication (DSRC) data.
 15. The computer-readable storage medium ofclaim 9, wherein configuring the vehicle light source comprises:computing a path for the light beam that originates at the vehicle lightsource and includes the first object; and based on the path, computingan angle of the light beam relative to the vehicle light source; andorienting the vehicle light source based on the angle.
 16. Thecomputer-readable storage medium of claim 9, wherein determining thatthe first object is relevant to the vehicle comprises: identifyingadvanced driver assistance system (ADAS) data based on the first object;and evaluating the ADAS data based on relevance criterion.
 17. A systemconfigured to control a vehicle light source, the system comprising: amemory storing a headlight control application; and a processor coupledto the memory, wherein, when executed by the processor, the headlightcontrol application configures the processor to: detect a plurality ofobjects within a vicinity of a vehicle that includes the vehicle lightsource; select one or more relevant objects included in the plurality ofobjects based on a relevance of each of the objects to the vehicle;generate control signals that configure the vehicle light source basedon the one or more relevant objects; and transmit the control signals tothe vehicle light source.
 18. The system of claim 17, wherein thevehicle light source comprises a light array or a headlamp.
 19. Thesystem of claim 17, wherein the headlight control application configuresthe processor to detect the plurality of objects by determining thatimage data of the vicinity includes the plurality of objects.
 20. Thesystem of claim 19, wherein the headlight control application furtherconfigures the processor to receive the image data from a camera that isattached to the vehicle.